Los datos utilizados para este análisis fueron tomados de la página de la Secretaría de Salud https://coronavirus.gob.mx/, donde se colectaron todos los casos de COVID-19 que se registraron en el país. Para este caso, la base de datos se filtró previamente para tener exclusivamente los casos para el estado de Querétaro.
Estos casos fueron colectados desde el día 1 de enero de 2020 hasta el 18 de octubre de 2021.
Este proyecto parte al observar la grafica de casos positivos de COVID-19 para el estado de Querétaro por estructura de edad, donde se marca la observación de que los casos no son homogéneos en las edades presentadas, sino que hay más casos de ciertas edades en específico durante ciertos periodos de tiempo.
Esto pone en pie la idea de que la edad del paciente es importante para determinar la dinámica de las infecciones de COVID-19.
library(plotly)
source("02_Scripts/01_Grafica_de_casos_positivos.R")
ggplotly(plot_positivos_re)
Con esta observación, se determinaron las probabilidades de transición entre estados, con base en el modelo de la CDMX. Estas probabilidades se obtuvieron por cada rango de edad de todos los casos que estan involucrados en la transición.
load("03_Out/OutData/probabilidades_de_transicion.RData")
probabilidades_de_transicion
## Suceptible --> Infectado Infectado --> Ambulatorio Infectado --> Grave
## p18 0.3771645 0.9746533 0.02534672
## p18_29 0.4279197 0.9768695 0.02313048
## p30_39 0.4668530 0.9452951 0.05470488
## p40_49 0.4974040 0.8905314 0.10946855
## p50_59 0.5207841 0.7936458 0.20635417
## p60_69 0.5615936 0.6387616 0.36123837
## p70 0.5661033 0.4746421 0.52535787
## Grave --> ICU ICU --> Muerte
## p18 0.09433962 0.5000000
## p18_29 0.09013605 0.6792453
## p30_39 0.13291634 0.7000000
## p40_49 0.17860600 0.7886179
## p50_59 0.19795222 0.8563218
## p60_69 0.23827825 0.8741935
## p70 0.18567536 0.9203354
Para el estableimiento del modelo es necesario establecer las categorias de edades con base en las probabilidades de transición. Para esto, se realiza un análisis de clusterización, donde los grupos de edad se agrupan de acuerdo a la distancia entre las probabilidades de transición, es decir, para aquellas probabilidades que sean más parecidas o menos distantes, seran agrupadas en un conjunto.
Analisis de cluster
Con este análisis, se obtuvieron cuatro grupos etarios por el cual se va a desarrollar el modelo:
Este diagrama fue elaborado con base al modelo de la CDMX https://modelo.covid19.cdmx.gob.mx/, al cual se le modificaron los compartimentos establecidos, ya que estos fueron definidos con base a las probabilidades de transición obtenidas con los datos públicos.
Diagrama por compartimentos
| Parámetros | Significado |
|---|---|
| \(\beta\) | Tasa de infección por la interacción \(SI\) y \(SI_l\) Este parámetro tiene estructura de edad |
| \(\alpha\) | Tasa a la que los individuos expuestos se vuelven infectantes |
| \(p_l\) | Fracción de individuos infectados que no son hospitalizados, se vuelven infectados leves \(0 \le p_g \le 1\) Este parámetro tiene estructura de edad |
| \(p_h\) | Fracción de individuos infectados que son hospitalizados \(0 \le p_g \le 1\) Este parámetro tiene estructura de edad |
| \(\delta_l\) | Tasa a la que los individuos infectados se vuelven infectados leves/ambulatorios |
| \(\delta_h\) | Tasa a la que los individuos infectados se vuelven infectados hospitalizados/graves |
| \(\gamma _R\) | Tasa en la que los individuos infectados leves se recuperan |
| \(p_i\) | Fracción de individuos hospitalizados que son intubados \(0 \le p_i \le 1\) Este parámetro tiene estructura de edad |
| \((1-p_i)\) | Resto de individuos hospitalizados que no son intubados, se recuperan |
| \(\gamma _h\) | Tasa a la que los individuos hospitalizados se recuperan |
| \(\delta _i\) | Tasa a la que los individuos hospitalizados son intubados |
| \(\mu\) | Fracción de individuos intubados que mueren \(0 \le \mu \le 1\) Este parámetro tiene estructura de edad |
| \((1-\mu)\) | Resto de individuos intubados que no mueren, se recuperan |
| \(\delta _m\) | Tasa a la que los individuos intubados mueren |
| \(\gamma _i\) | Tasa a la que los individuos intubados se recuperan |
| Parámetros | Valor |
|---|---|
| \(\beta _1\) | 0.3771645 |
| \(\beta _2\) | 0.4473864 |
| \(\beta _3\) | 0.5090940 |
| \(\beta _4\) | 0.5638485 |
| \(\alpha\) | 1/Dincub |
| \(p _{l1}\) | 0.9746533 |
| \(p _{l2}\) | 0.9610823 |
| \(p _{l3}\) | 0.8420886 |
| \(p _{l4}\) | 0.5567019 |
| \(p _{h1}\) | 0.02534672 |
| \(p _{h2}\) | 0.03891768 |
| \(p _{h3}\) | 0.15791136 |
| \(p _{h4}\) | 0.44329812 |
| \(\delta _l\) | 1/Dinfect |
| \(\delta _h\) | 1/Dhosp |
| \(\gamma _R\) | 1/DRL |
| \(p_{i1}\) | 0.09433962 |
| \(p_{i2}\) | 0.11152620 |
| \(p_{i3}\) | 0.18827911 |
| \(p_{i4}\) | 0.21197680 |
| \(\delta _i\) | 1/DICU |
| \(\gamma _h\) | 1/DRH |
| \(\mu _1\) | 0.5000000 |
| \(\mu _2\) | 0.6896226 |
| \(\mu _3\) | 0.8224699 |
| \(\mu _4\) | 0.8972645 |
| \(\delta _m\) | 1/DM |
| \(\gamma _i\) | 1/DRICU |
| Parámetro | Valor | Significado |
|---|---|---|
| Dincub | 5.6 | Tiempo de incubación (dias) (Quesada et al., 2021 DOI: 10.1016/j.rceng.2020.08.002) |
| Dinfect | 5.5 | Tiempo en el que es infeccioso el paciente (Xin et al., 2021 https://doi.org/10.1093/cid/ciab746) |
| DRL | 14 | Tiempo de recuperacion de casos leves (dias) (Se mantiene de diversas fuentes ) |
| Dhosp | 4 | Tiempo entre presencia de sintomas y hospitalización en casos graves (dias) |
| DRH | 12 | Tiempo entre hospitalizacion de casos gravez no UCI y recuperacion (dias) |
| DM | 8 | Tiempo entre ingreso a UCI y deceso |
| DRICU | 7 | Tiempo entre ingreso a UCI y recuperación (dias) |
| DICU | 1 | Tiempo entre ingreso a hospitalización e ingreso a UCI |
| Variable | Elementos de las ecuaciones | ||
|---|---|---|---|
| \(S_1\) | \(- 0.3771 S_1 (I_1 + I_2+ I_3 + I_4)\) | ||
| \(E_1\) | \(0.3771 S_1 (I_1 + I_2+ I_3 + I_4)\) | \(-0.1785 E_1\) | |
| \(I_1\) | \(0.1785 E_1\) | \(-0.006325 I_1\) | \(-0.1772 I_1\) |
| \(I_{l1}\) | \(0.1772 I_1\) | \(-0.0714 I_{l1}\) | |
| \(I_{h1}\) | \(0.006325 I_1\) | \(-0.0943 I_{h1}\) | \(-0.0754 I_{h1}\) |
| \(I_{i1}\) | \(0.0943 I_{h1}\) | \(-0.0625 I_{i1}\) | \(-0.0714 I_{i1}\) |
| \(M_1\) | \(0.0625 I_{i1}\) | ||
| \(R_1\) | \(0.0714 I_{l1}\) | \(+0.0754 I_{h1}\) | \(+0.0714 I_{i1}\) |
| \(S_2\) | \(- 0.4473 S_2 (I_1 + I_2+ I_3 + I_4)\) | ||
| \(E_2\) | \(0.4473 S_2 (I_1 + I_2+ I_3 + I_4)\) | \(-0.1785 E_2\) | |
| \(I_2\) | \(0.1785 E_2\) | \(-0.009725 I_2\) | \(-0.1747 I_2\) |
| \(I_{l2}\) | \(0.1747 I_2\) | \(-0.0714 I_{l2}\) | |
| \(I_{h2}\) | \(0.009725 I_2\) | \(-0.1115 I_{h2}\) | \(-0.0740 I_{h2}\) |
| \(I_{i2}\) | \(0.1115 I_{h2}\) | \(-0.0862 I_{i2}\) | \(-0.0443 I_{i2}\) |
| \(M_2\) | \(0.0862 I_{i2}\) | ||
| \(R_2\) | \(0.0714 I_{l2}\) | \(+0.0740 I_{h2}\) | \(+0.0443 I_{i2}\) |
| \(S_3\) | \(-0.5090 S_3 (I_1 + I_2+ I_3 + I_4)\) | ||
| \(E_3\) | \(0.5090 S_3 (I_1 + I_2+ I_3 + I_4)\) | \(-0.1785 E_3\) | |
| \(I_3\) | \(0.1785 E_3\) | \(-0.0394 I_3\) | \(-0.1530 I_3\) |
| \(I_{l3}\) | \(0.1530 I_3\) | \(-0.0714 I_{l3}\) | |
| \(I_{h3}\) | \(0.0394 I_3\) | \(-0.1882 I_{h3}\) | \(-0.0676 I_{h3}\) |
| \(I_{i3}\) | \(0.1882 I_{h3}\) | \(-0.1028 I_{i3}\) | \(-0.0253 I_{i3}\) |
| \(M_3\) | \(0.1028 I_{i3}\) | ||
| \(R_3\) | \(0.0714 I_{l3}\) | \(+0.0676 I_{h3}\) | \(+0.0253 I_{i3}\) |
| \(S_4\) | \(- 0.5638 S_4 (I_1 + I_2+ I_3 + I_4)\) | ||
| \(E_4\) | \(0.5638 S_4 (I_1 + I_2+ I_3 + I_4)\) | \(-0.1785 E_4\) | |
| \(I_4\) | \(0.1785 E_4\) | \(-0.1108 I_4\) | \(-1012 I_4\) |
| \(I_{l4}\) | \(1012 I_4\) | \(-0.0714 I_{l4}\) | |
| \(I_{h4}\) | \(0.1108 I_4\) | \(-0.2119 I_{h4}\) | \(-0.0656 I_{h4}\) |
| \(I_{i4}\) | \(0.2119 I_{h4}\) | \(-0.1121 I_{i4}\) | \(-0.01468 I_{i4}\) |
| \(M_4\) | \(0.1121 I_{i4}\) | ||
| \(R_4\) | \(0.0714 I_{l4}\) | \(0.0656 I_{h4}\) | \(0.01468 I_{i4}\) |
Grupo 1
Grupo 2
Grupo 3
Grupo 4
\[\begin{array}{l} \text{Para el grupo 1 :} \\ \dot S_1 = - \frac{\beta_1}{N} * S_1 (I_1 + I_2+ I_3 + I_4) \\ \dot E_1 = \frac{\beta_1}{N} * S_1 (I_1 + I_2+ I_3 + I_4) - \alpha E_1 \\ \dot I_1 = \alpha E_1 - p_{h1} \delta _h I_1 - p_{l1} \delta _l I_1 \\ \dot I_{l1} = p_{l1} \delta _l I_1 - \gamma _R I_{l1} \\ \dot I_{h1} = p_{h1} \delta _h I_1 - p_{i1} \delta _{i} I_{h1} - (1 - p_{i1}) \gamma _h I_{h1} \\ \dot I_{i1} = p_{i1} \delta _i I_{h1} - \mu _1 \delta _\mu I_{i1} - (1 - \mu _1) \gamma _i I_{i1} \\ \dot M_1 = \mu _1 \delta _\mu I_{i1} \\ \dot R_1 = \gamma _R I_{l1} + (1 - p_{i1}) \gamma _h I_{h1} + (1 - \mu _1) \gamma _i I_{i1} \\ \\ \text{Para el grupo 2 :} \\ \dot S_2 = - \frac{\beta_2}{N} * S_2 (I_1 + I_2+ I_3 + I_4)\\ \dot E_2 = \frac{\beta_2}{N} * S_2 (I_1 + I_2+ I_3 + I_4) - \alpha E_2 \\ \dot I_2 = \alpha E_2 - p_{h2} \delta _h I_2 - p_{l2} \delta _l I_2 \\ \dot I_{l2} = p_{l2} \delta _l I_2 - \gamma _R I_{l2} \\ \dot I_{h2} = p_{h2} \delta _h I_2 - p_{i2} \delta _{i} I_{h2} - (1 - p_{i2}) \gamma _h I_{h2} \\ \dot I_{i2} = p_{i2} \delta _i I_{h2} - \mu _2 \delta _\mu I_{i2} - (1 - \mu _2) \gamma _i I_{i2} \\ \dot M_2 = \mu _2 \delta _\mu I_{i2} \\ \dot R_2 = \gamma _R I_{l2} + (1 - p_{i2}) \gamma _h I_{h2} + (1 - \mu _2) \gamma _i I_{i2} \\ \\ \text{Para el grupo 3 :} \\ \dot S_3 = - \frac{\beta_3}{N} * S_3 (I_1 + I_2+ I_3 + I_4) \\ \dot E_3 = \frac{\beta_3}{N} * S_3 (I_1 + I_2+ I_3 + I_4) - \alpha E_3 \\ \dot I_3 = \alpha E_3 - p_{h3} \delta _h I_3 - p_{l3} \delta _l I_3 \\ \dot I_{l3} = p_{l3} \delta _l I_3 - \gamma _R I_{l3} \\ \dot I_{h3} = p_{h3} \delta _h I_3 - p_{i3} \delta _{i} I_{h3} - (1 - p_{i3}) \gamma _h I_{h3} \\ \dot I_{i3} = p_{i3} \delta _i I_{h3} - \mu _3 \delta _\mu I_{i3} - (1 - \mu _3) \gamma _i I_{i3} \\ \dot M_3 = \mu _3 \delta _\mu I_{i3} \\ \dot R_3 = \gamma _R I_{l3} + (1 - p_{i3}) \gamma _h I_{h3} + (1 - \mu _3) \gamma _i I_{i3} \\ \\ \text{Para el grupo 4 :} \\ \dot S_4 = - \frac{\beta_4}{N} * S_4 (I_1 + I_2+ I_3 + I_4) \\ \dot E_4 = \frac{\beta_4}{N} * S_4 (I_1 + I_2+ I_3 + I_4) - \alpha E_4 \\ \dot I_4 = \alpha E_4 - p_{h4} \delta _h I_4 - p_{l4} \delta _l I_4 \\ \dot I_{l4} = p_{l4} \delta _l I_4 - \gamma _R I_{l4} \\ \dot I_{h4} = p_{h4} \delta _h I_4 - p_{i4} \delta _{i} I_{h4} - (1 - p_{i4}) \gamma _h I_{h4} \\ \dot I_{i4} = p_{i4} \delta _i I_{h4} - \mu _4 \delta _\mu I_{i4} - (1 - \mu _4) \gamma _i I_{i4} \\ \dot M_4 = \mu _4 \delta _\mu I_{i4} \\ \dot R_4 = \gamma _R I_{l4} + (1 - p_{i4}) \gamma _h I_{h4} + (1 - \mu _4) \gamma _i I_{i4} \end{array}\]
Para demostrar que la población se conserva, se asume que:
\[N = S + E + I + I_l + I_h + I_i + M + R = 1\]
Esto siendo aplicable a todos los casos en la estructura etaria, por lo que:
\[\dot N = \dot S + \dot E + \dot I + \dot I_l + \dot I_h + \dot I_i + \dot M + \dot R = 0\]
De manera que, integrando a las ecuaciones, quedaría como:
\[\begin{array}{l} \dot N = - \beta_n S_n (\sum I_n) + \\ \beta_n S_n (\sum I_n) - \alpha E_n + \alpha E_n \\ - p_{hn} \delta_{h} I_n - p_{ln} \delta _l I_{n} + p_{ln} \delta _l I_{n} \\ - \gamma _R I_{ln} + p_{hn} \delta_{h} I_n - p_{in} \delta _i I_{hn} \\ - (1-p_{in}) \gamma _h I_{hn} + p_{in} \delta _i I_{hn} \\ - \mu _n \delta _\mu I_{in} - (1-\mu_n) \gamma_i I_{in} \\ + \mu _n \delta _\mu I_{in} + \gamma _R I_{ln} + (1-p_{in}) \gamma _h I_{hn} \\ + (1-\mu_n) \gamma_i I_{in} = 0 \end{array}\]
De acuerdo a la información obtenida del INEGI, la población del estado de Querétaro es de 2,368,467 habitantes, al senso realizado en 2020. Este valor de la poblacion se toma como el valor total de la población. Para el caso de cada estructura de edad definia, la población de individuos suceptibles quedaria como:
El modelo de COVID para el estado de Querétaro se resolvió en R con el uso de deSolve.
## Funcion del modelo ====
modelo_covid_all_groups <- function(t, state, parameters){
with(as.list(c(state, parameters)), {
## GRUPO 1
dS1 <- - (beta_1/N1+N2+N3+N4) * S1 * (I1 + I2 + I3 + I4)
dE1 <- ( (beta_1/N1+N2+N3+N4) * S1 * (I1 + I2 + I3 + I4) ) - ( alpha * E1 )
dI1 <- ( alpha * E1 ) - ( ph_1 * delta_h * I1 ) - ( pl_1 * delta_l * I1 )
dI_l1 <- ( pl_1 * delta_l * I1 ) - ( gamma_R * I_l1 )
dI_h1 <- ( ph_1 * delta_h * I1 ) - ( pi_1 * delta_i * I_h1 ) - ( (1 - pi_1) * gamma_h * I_h1 )
dI_i1 <- ( pi_1 * delta_i * I_h1 ) - ( mu_1 * delta_m * I_i1 ) - ( (1 - mu_1) * gamma_i * I_i1 )
dM1 <- mu_1 * delta_m * I_i1
dR1 <- ( gamma_R * I_l1 ) + ( (1 - pi_1) * gamma_h * I_h1 ) + ( (1 - mu_1) * gamma_i * I_i1 )
## GRUPO 2
dS2 <- - (beta_2/N1+N2+N3+N4) * S2 * (I1 + I2 + I3 + I4)
dE2 <- ( (beta_2/N1+N2+N3+N4) * S2 * (I1 + I2 + I3 + I4) ) - ( alpha * E2 )
dI2 <- ( alpha * E2 ) - ( ph_2 * delta_h * I2 ) - ( pl_2 * delta_l * I2 )
dI_l2 <- ( pl_2 * delta_l * I2 ) - ( gamma_R * I_l2 )
dI_h2 <- ( ph_2 * delta_h * I2 ) - ( pi_2 * delta_i * I_h2 ) - ( (1 - pi_2) * gamma_h * I_h2 )
dI_i2 <- ( pi_2 * delta_i * I_h2 ) - ( mu_2 * delta_m * I_i2 ) - ( (1 - mu_2) * gamma_i * I_i2 )
dM2 <- mu_2 * delta_m * I_i2
dR2 <- ( gamma_R * I_l2 ) + ( (1 - pi_2) * gamma_h * I_h2 ) + ( (1 - mu_2) * gamma_i * I_i2 )
## GRUPO 3
dS3 <- - (beta_3/N1+N2+N3+N4) * S3 * (I1 + I2 + I3 + I4)
dE3 <- ( (beta_3/N1+N2+N3+N4) * S3 * (I1 + I2 + I3 + I4) ) - ( alpha * E3 )
dI3 <- ( alpha * E3 ) - ( ph_3 * delta_h * I3 ) - ( pl_3 * delta_l * I3 )
dI_l3 <- ( pl_3 * delta_l * I3 ) - ( gamma_R * I_l3 )
dI_h3 <- ( ph_3 * delta_h * I3 ) - ( pi_3 * delta_i * I_h3 ) - ( (1 - pi_3) * gamma_h * I_h3 )
dI_i3 <- ( pi_3 * delta_i * I_h3 ) - ( mu_3 * delta_m * I_i3 ) - ( (1 - mu_3) * gamma_i * I_i3 )
dM3 <- mu_3 * delta_m * I_i3
dR3 <- ( gamma_R * I_l3 ) + ( (1 - pi_3) * gamma_h * I_h3 ) + ( (1 - mu_3) * gamma_i * I_i3 )
## GRUPO 4
dS4 <- - (beta_4/N1+N2+N3+N4) * S4 * (I1 + I2 + I3 + I4)
dE4 <- ( (beta_4/N1+N2+N3+N4) * S4 * (I1 + I2 + I3 + I4) ) - ( alpha * E4 )
dI4 <- ( alpha * E4 ) - ( ph_4 * delta_h * I4 ) - ( pl_4 * delta_l * I4 )
dI_l4 <- ( pl_4 * delta_l * I4 ) - ( gamma_R * I_l4 )
dI_h4 <- ( ph_4 * delta_h * I4 ) - ( pi_4 * delta_i * I_h4 ) - ( (1 - pi_4) * gamma_h * I_h4 )
dI_i4 <- ( pi_4 * delta_i * I_h4 ) - ( mu_4 * delta_m * I_i4 ) - ( (1 - mu_4) * gamma_i * I_i4 )
dM4 <- mu_4 * delta_m * I_i4
dR4 <- ( gamma_R * I_l4 ) + ( (1 - pi_4) * gamma_h * I_h4 ) + ( (1 - mu_4) * gamma_i * I_i4 )
list(c(dS1, dE1, dI1, dI_l1, dI_h1, dI_i1, dM1, dR1,
dS2, dE2, dI2, dI_l2, dI_h2, dI_i2, dM2, dR2,
dS3, dE3, dI3, dI_l3, dI_h3, dI_i3, dM3, dR3,
dS4, dE4, dI4, dI_l4, dI_h4, dI_i4, dM4, dR4))
})
}
## Tiempo ====
t <- seq (0, 100, by = 0.01)
## Parametros ====
parameters <- c(
beta_1 <- 0.3771645 ,
beta_2 <- 0.4473864 ,
beta_3 <- 0.5090940 ,
beta_4 <- 0.5638485 ,
alpha <- 1/5.6 ,
pl_1 <- 0.9746533 ,
pl_2 <- 0.9610823 ,
pl_3 <- 0.8420886 ,
pl_4 <- 0.5567019 ,
ph_1 <- 0.02534672 ,
ph_2 <- 0.03891768 ,
ph_3 <- 0.15791136 ,
ph_4 <- 0.44329812 ,
delta_l <- 1/5.5 ,
delta_h <- 1/4 ,
gamma_R <- 1/14 ,
pi_1 <- 0.09433962 ,
pi_2 <- 0.11152620 ,
pi_3 <- 0.18827911 ,
pi_4 <- 0.21197680 ,
delta_i <- 1/1 ,
gamma_h <- 1/12 ,
mu_1 <- 0.5000000 ,
mu_2 <- 0.6896226 ,
mu_3 <- 0.8224699 ,
mu_4 <- 0.8972645 ,
delta_m <- 1/8 ,
gamma_i <- 1/7 ,
N1 <- 782000 ,
N2 <- 801000 ,
N3 <- 539000 ,
N4 <- 242000
)
state <- c(
## GRUPO 1
S1 = N1 - 1,
E1 = 0,
I1 = 1,
I_l1 = 0,
I_h1 = 0,
I_i1 = 0,
M1 = 0,
R1 = 0,
## GRUPO 2
S2 = N2 - 1,
E2 = 0,
I2 = 1,
I_l2 = 0,
I_h2 = 0,
I_i2 = 0,
M2 = 0,
R2 = 0,
## GRUPO 3
S3 = N3 - 1,
E3 = 0,
I3 = 1,
I_l3 = 0,
I_h3 = 0,
I_i3 = 0,
M3 = 0,
R3 = 0,
## GRUPO 4
S4 = N4 - 1,
E4 = 0,
I4 = 1,
I_l4 = 0,
I_h4 = 0,
I_i4 = 0,
M4 = 0,
R4 = 0
)
## Out ====
out <- as.data.frame(ode(y = state,
times = t,
func = modelo_covid_all_groups,
parms = parameters))
Modelo matemático por estructura etaria para el estado de Querétaro
Posteriormente, se realizó el modelo por cada grupo etario. Para esto, no se consideró la interación entre infectados de diferentes grupos etarios debido a que no se toman en cuenta sus ecuaciones correspondientes.
# Resolucion ====
## Funcion del modelo ====
modelo_covid_grupo_1 <- function(t, state, parameters){
with(as.list(c(state, parameters)), {
## GRUPO 1
dS1 <- - beta_1 * S1 * I1
dE1 <- (beta_1 * S1 * I1) - ( alpha * E1 )
dI1 <- ( alpha * E1 ) - ( ph_1 * delta_h * I1 ) - ( pl_1 * delta_l * I1 )
dI_l1 <- ( pl_1 * delta_l * I1 ) - ( gamma_R * I_l1 )
dI_h1 <- ( ph_1 * delta_h * I1 ) - ( pi_1 * delta_i * I_h1 ) - ( (1 - pi_1) * gamma_h * I_h1 )
dI_i1 <- ( pi_1 * delta_i * I_h1 ) - ( mu_1 * delta_m * I_i1 ) - ( (1 - mu_1) * gamma_i * I_i1 )
dM1 <- mu_1 * delta_m * I_i1
dR1 <- ( gamma_R * I_l1 ) + ( (1 - pi_1) * gamma_h * I_h1 ) + ( (1 - mu_1) * gamma_i * I_i1 )
list(c(dS1, dE1, dI1, dI_l1, dI_h1, dI_i1, dM1, dR1))
})
}
## Tiempo ====
t <- seq (0, 100, by = 0.01)
## Parametros ====
parameters <- c(
beta_1 <- 0.3771645 ,
alpha <- 1/5.6 ,
pl_1 <- 0.9746533 ,
ph_1 <- 0.02534672 ,
delta_l <- 1/5.5 ,
delta_h <- 1/4 ,
gamma_R <- 1/14 ,
pi_1 <- 0.09433962 ,
delta_i <- 1/1 ,
gamma_h <- 1/12 ,
mu_1 <- 0.5000000 ,
delta_m <- 1/8 ,
gamma_i <- 1/7 ,
N <- 782000
)
## Condiciones iniciales del sistema ====
# De acuerdo a la información obtenida del INEGI, la población del estado de
# Querétaro es de 2,368,467 habitantes, al senso realizado en 2020.
# Este valor de la poblacion se toma como el valor total de la población.
# Para el caso de cada estructura de edad definia, la población de individuos
# suceptibles quedaria como:
# Grupo 1: Menores de 18 años = 782000
# Grupo 2: 18 - 39 años = 801000
# Grupo 3: 40 - 59 años = 539000
# Grupo 4: 60 - >70 años = 242000
state <- c(
S1 = N - 1,
E1 = 0,
I1 = 1,
I_l1 = 0,
I_h1 = 0,
I_i1 = 0,
M1 = 0,
R1 = 0
)
## Out ====
out <- as.data.frame(ode(y = state,
times = t,
func = modelo_covid_grupo_1,
parms = parameters))
Modelo covid grupo 1
Mismo caso, solo que todo el modelo está contemplado para el grupo 2
# Resolucion ====
## Funcion del modelo ====
modelo_covid_grupo_2 <- function(t, state, parameters){
with(as.list(c(state, parameters)), {
## GRUPO 2
dS2 <- - beta_2 * S2 * I2
dE2 <- (beta_2 * S2 * I2) - ( alpha * E2 )
dI2 <- ( alpha * E2 ) - ( ph_2 * delta_h * I2 ) - ( pl_2 * delta_l * I2 )
dI_l2 <- ( pl_2 * delta_l * I2 ) - ( gamma_R * I_l2 )
dI_h2 <- ( ph_2 * delta_h * I2 ) - ( pi_2 * delta_i * I_h2 ) - ( (1 - pi_2) * gamma_h * I_h2 )
dI_i2 <- ( pi_2 * delta_i * I_h2 ) - ( mu_2 * delta_m * I_i2 ) - ( (1 - mu_2) * gamma_i * I_i2 )
dM2 <- mu_2 * delta_m * I_i2
dR2 <- ( gamma_R * I_l2 ) + ( (1 - pi_2) * gamma_h * I_h2 ) + ( (1 - mu_2) * gamma_i * I_i2 )
list(c(dS2, dE2, dI2, dI_l2, dI_h2, dI_i2, dM2, dR2))
})
}
## Tiempo ====
t <- seq (0, 100, by = 0.01)
## Parametros ====
parameters <- c(
beta_2 <- 0.4473864 ,
alpha <- 1/5.6 ,
pl_2 <- 0.9610823 ,
ph_2 <- 0.03891768 ,
delta_l <- 1/5.5 ,
delta_h <- 1/4 ,
gamma_R <- 1/14 ,
pi_2 <- 0.11152620 ,
delta_i <- 1/1 ,
gamma_h <- 1/12 ,
mu_2 <- 0.6896226 ,
delta_m <- 1/8 ,
gamma_i <- 1/7 ,
N <- 801000
)
## Condiciones iniciales del sistema ====
# De acuerdo a la información obtenida del INEGI, la población del estado de
# Querétaro es de 2,368,467 habitantes, al senso realizado en 2020.
# Este valor de la poblacion se toma como el valor total de la población.
# Para el caso de cada estructura de edad definia, la población de individuos
# suceptibles quedaria como:
# Grupo 1: Menores de 18 años = 782000
# Grupo 2: 18 - 39 años = 801000
# Grupo 3: 40 - 59 años = 539000
# Grupo 4: 60 - >70 años = 242000
state <- c(
S2 = N - 1,
E2 = 0,
I2 = 1,
I_l2 = 0,
I_h2 = 0,
I_i2 = 0,
M2 = 0,
R2 = 0
)
## Out ====
out <- as.data.frame(ode(y = state,
times = t,
func = modelo_covid_grupo_2,
parms = parameters))
Modelo covid para el grupo 2
Mismo caso, solo que todo el modelo está contemplado para el grupo 3
# Resolucion ====
## Funcion del modelo ====
modelo_covid_grupo_3 <- function(t, state, parameters){
with(as.list(c(state, parameters)), {
## GRUPO 3
dS3 <- - beta_3 * S3 * I3
dE3 <- (beta_3 * S3 * I3) - ( alpha * E3 )
dI3 <- ( alpha * E3 ) - ( ph_3 * delta_h * I3 ) - ( pl_3 * delta_l * I3 )
dI_l3 <- ( pl_3 * delta_l * I3 ) - ( gamma_R * I_l3 )
dI_h3 <- ( ph_3 * delta_h * I3 ) - ( pi_3 * delta_i * I_h3 ) - ( (1 - pi_3) * gamma_h * I_h3 )
dI_i3 <- ( pi_3 * delta_i * I_h3 ) - ( mu_3 * delta_m * I_i3 ) - ( (1 - mu_3) * gamma_i * I_i3 )
dM3 <- mu_3 * delta_m * I_i3
dR3 <- ( gamma_R * I_l3 ) + ( (1 - pi_3) * gamma_h * I_h3 ) + ( (1 - mu_3) * gamma_i * I_i3 )
list(c(dS3, dE3, dI3, dI_l3, dI_h3, dI_i3, dM3, dR3))
})
}
## Tiempo ====
t <- seq (0, 100, by = 0.01)
## Parametros ====
parameters <- c(
beta_3 <- 0.5090940 ,
alpha <- 1/5.6 ,
pl_3 <- 0.8420886 ,
ph_3 <- 0.15791136 ,
delta_l <- 1/5.5 ,
delta_h <- 1/4 ,
gamma_R <- 1/14 ,
pi_3 <- 0.18827911 ,
delta_i <- 1/1 ,
gamma_h <- 1/12 ,
mu_3 <- 0.8224699 ,
delta_m <- 1/8 ,
gamma_i <- 1/7 ,
N <- 539000
)
## Condiciones iniciales del sistema ====
# De acuerdo a la información obtenida del INEGI, la población del estado de
# Querétaro es de 2,368,467 habitantes, al senso realizado en 2020.
# Este valor de la poblacion se toma como el valor total de la población.
# Para el caso de cada estructura de edad definia, la población de individuos
# suceptibles quedaria como:
# Grupo 1: Menores de 18 años = 782000
# Grupo 2: 18 - 39 años = 801000
# Grupo 3: 40 - 59 años = 539000
# Grupo 4: 60 - >70 años = 242000
state <- c(
S3 = N - 1,
E3 = 0,
I3 = 1,
I_l3 = 0,
I_h3 = 0,
I_i3 = 0,
M3 = 0,
R3 = 0
)
## Out ====
out <- as.data.frame(ode(y = state,
times = t,
func = modelo_covid_grupo_3,
parms = parameters))
Modelo covid para el grupo 3
Mismo caso, solo que todo el modelo está contemplado para el grupo 3
# Resolucion ====
## Funcion del modelo ====
modelo_covid_grupo_4 <- function(t, state, parameters){
with(as.list(c(state, parameters)), {
## GRUPO 4
dS4 <- - beta_4 * S4 * I4
dE4 <- (beta_4 * S4 * I4) - ( alpha * E4 )
dI4 <- ( alpha * E4 ) - ( ph_4 * delta_h * I4 ) - ( pl_4 * delta_l * I4 )
dI_l4 <- ( pl_4 * delta_l * I4 ) - ( gamma_R * I_l4 )
dI_h4 <- ( ph_4 * delta_h * I4 ) - ( pi_4 * delta_i * I_h4 ) - ( (1 - pi_4) * gamma_h * I_h4 )
dI_i4 <- ( pi_4 * delta_i * I_h4 ) - ( mu_4 * delta_m * I_i4 ) - ( (1 - mu_4) * gamma_i * I_i4 )
dM4 <- mu_4 * delta_m * I_i4
dR4 <- ( gamma_R * I_l4 ) + ( (1 - pi_4) * gamma_h * I_h4 ) + ( (1 - mu_4) * gamma_i * I_i4 )
list(c(dS4, dE4, dI4, dI_l4, dI_h4, dI_i4, dM4, dR4))
})
}
## Tiempo ====
t <- seq (0, 100, by = 0.01)
## Parametros ====
parameters <- c(
beta_4 <- 0.5638485 ,
alpha <- 1/5.6 ,
pl_4 <- 0.5567019 ,
ph_4 <- 0.44329812 ,
delta_l <- 1/5.5 ,
delta_h <- 1/4 ,
gamma_R <- 1/14 ,
pi_4 <- 0.21197680 ,
delta_i <- 1/1 ,
gamma_h <- 1/12 ,
mu_4 <- 0.8972645 ,
delta_m <- 1/8 ,
gamma_i <- 1/7 ,
N <- 242000
)
## Condiciones iniciales del sistema ====
# De acuerdo a la información obtenida del INEGI, la población del estado de
# Querétaro es de 2,368,467 habitantes, al senso realizado en 2020.
# Este valor de la poblacion se toma como el valor total de la población.
# Para el caso de cada estructura de edad definia, la población de individuos
# suceptibles quedaria como:
# Grupo 1: Menores de 18 años = 782000
# Grupo 2: 18 - 39 años = 801000
# Grupo 3: 40 - 59 años = 539000
# Grupo 4: 60 - >70 años = 242000
state <- c(
S4 = N - 1,
E4 = 0,
I4 = 1,
I_l4 = 0,
I_h4 = 0,
I_i4 = 0,
M4 = 0,
R4 = 0
)
## Out ====
out <- as.data.frame(ode(y = state,
times = t,
func = modelo_covid_grupo_4,
parms = parameters))
Modelo covid para el grupo 4
Esta gráfica se obtiene a partir de los datos inferidos del modelo en condiciones donde no se aplicaron medidas de control.
source("02_Scripts/07_Graficas_del_modelo.R")
library(plotly)
ggplotly(plot_irm)